home *** CD-ROM | disk | FTP | other *** search
/ Java Developer's Companion / Java Developer's Companion.iso / documentation / tutorial / java / io / example / CheckedDITest.java < prev    next >
Encoding:
Java Source  |  1997-07-13  |  2.2 KB  |  59 lines

  1. /*
  2.  * Copyright (c) 1995-1997 Sun Microsystems, Inc. All Rights Reserved.
  3.  *
  4.  * Permission to use, copy, modify, and distribute this software
  5.  * and its documentation for NON-COMMERCIAL purposes and without
  6.  * fee is hereby granted provided that this copyright notice
  7.  * appears in all copies. Please refer to the file "copyright.html"
  8.  * for further important copyright and licensing information.
  9.  *
  10.  * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
  11.  * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
  12.  * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
  13.  * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
  14.  * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
  15.  * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
  16.  */
  17. import java.io.*;
  18.  
  19. class CheckedDITest {
  20.     public static void main(String[] args) {
  21.  
  22.         Adler32 inChecker = new Adler32();
  23.         Adler32 outChecker = new Adler32();
  24.         CheckedDataInput cis = null;
  25.         CheckedDataOutput cos = null;
  26.  
  27.         try {
  28.             cis = new CheckedDataInput(new DataInputStream(
  29.                                          new FileInputStream("farrago.txt")), inChecker);
  30.             cos = new CheckedDataOutput(new DataOutputStream(
  31.                                           new FileOutputStream("outagain.txt")), outChecker);
  32.         } catch (FileNotFoundException e) {
  33.             System.err.println("CheckedIOTest: " + e);
  34.             System.exit(-1);
  35.         } catch (IOException e) {
  36.             System.err.println("CheckedIOTest: " + e);
  37.             System.exit(-1);
  38.         }
  39.  
  40.         try {
  41.             boolean EOF = false;
  42.  
  43.             while (!EOF) {
  44.                 try {
  45.                     int c = cis.readByte();
  46.                     cos.write(c);
  47.                 } catch (EOFException e) {
  48.                     EOF = true;
  49.                 }
  50.             }
  51.  
  52.             System.out.println("Input stream check sum: " + cis.getChecksum().getValue());
  53.             System.out.println("Output stream check sum: " + cos.getChecksum().getValue());
  54.         } catch (IOException e) {
  55.             System.err.println("CheckedIOTest: " + e);
  56.         }
  57.     }
  58. }
  59.